| Предыдущая | Следующая | Оглавление | |
Flash Player 6.
interfaceInterfaceName[extendsInterfaceName] {}
Замечание: Для использования этого ключевого слова, вы должны указать ActionScript 2.0 и Flash Player 6 или более новые во вкладке Flash диалогового окна Publish Settings для вашего файла FLA. Это ключевое слово поддерживается только в случае использования во внешних файлах скриптов, но не в скриптах, написанных в окне Actions.
Ключевое слово; определяет интерфейс. Интерфейс подобен классу, но имеет следующие важные отличия:
get и set не допускаются при определении интерфейса.Для получения дополнительной информации, смотрите "Создание и использование интерфейсов" в Использовании ActionScript во Flash.
Следующий пример показывает несколько путей определения и подключения интерфейсов:
(в папке самого верхнего уровня файлы .as: Ia, B, C, Ib, D, Ic, E)
// имя файла Ia.as
interface Ia
{
function k():Number; // только объявление метода
function n(x:Number):Number; // без реализации
}
// имя файла B.as
class B implements Ia
{
function k():Number {return 25;}
function n(x:Number):Number {return x+5;}
}
// внешний скрипт или скрипт в панели Actions
var mvar:B = new B();
trace(mvar.k()); // 25
trace(mvar.n(7)); // 12
// имя файла c.as
class C implements Ia
{
function k():Number {return 25;}
} // error: class must implement all interface methods
// имя файла Ib.as
interface Ib
{
function o():Void;
}
class D implements Ia, Ib
{
function k():Number {return 15;}
function n(x:Number):Number {return x*x;}
function o():Void {trace("o");}
}
// внешний скрипт или скрипт в панели Actions
mvar = new D();
trace(mvar.k()); // 15
trace(mvar.n(7)); // 49
trace(mvar.o()); // "o"
interface Ic extends Ia
{
function p():Void;
}
class E implements Ib, Ic
{
function k():Number {return 25;}
function n(x:Number):Number {return x+5;}
function o():Void {trace("o");}
function p():Void {trace("p");}
}
class,extends,implements
| Посмотреть комментарии LiveDocs | Предыдущая | Следующая | Оглавление | |